The invention relates to sensor systems and, more particularly, to non-imaging, scanning sensor systems which simultaneously correct sensor output signal distortion caused by random sensor noise and temporal instabilities in the sensor scanning mechanism.
Non-imaging, scanning sensor systems are employed in many applications where it is desired to detect the presence of objects. For example, non-imaging scanning sensor systems employing an array of infrared detector elements positioned in a focal plane of a scanning optical system are used to passively detect the presence of objects at extended distances. The array is typically mounted on a gimballed sensor unit to scan a portion of a field of view and produce sensor output signals which are sampled and multiplexed for further processing by on-gimbal and off-gimbal circuitry.
Sensor output signals from the gimballed sensor unit can be degraded by distortion from a number of sources. Two of the largest and most common sources of sensor output signal distortion are timing, or temporal, instabilities in the sensor scanning mechanism, and random noise inherent in the sensor.
Temporal instabilities can arise in the output signal of scanning system sensor units from environmental stresses which induce undesired spatial displacement in the sensor scanning mechanism. Uncompensated spatial displacements can interrupt the linear scanning process of the scanning mechanism in the sensor unit. These discontinuities in the otherwise linear scanning process then cause temporal instabilities in the sensor output signal. Similarly, timing errors in the sampling circuitry of the sensor unit cause temporal instabilities in the sensor output signal. As a result, the actual view angle (.theta.) for the sensor unit can be expressed by: EQU .theta.(t)=kt+.DELTA.(t), (Eq. 1)
where k is a desired linear scan rate, and .DELTA. is a jitter angle error component measured as a function of time, t.
Conventional signal processing typically employs one of two methods to derive a desired linear representation of the output signal provided by the sensor unit when it scans an actual (nonlinear) view angle. The two compensation methods use phase shifting of Fast Fourier Transforms (FFT) frequency components and interpolation between signal samples, respectively, to, in effect, remove the jitter angle error component .DELTA.(t) from equation 1.
The method of phase shifting FFT frequency components is very complex. Actual signal samples are grouped into short "blocks" and processed through an FFT processor. The resulting FFT frequency components are phase rotated by a phase angle proportional to the product of the prevailing jitter angle and the FFT frequency component. After phase shifting has been applied to each FFT frequency component, an inverse FFT is performed to produce a desired "linear scan rate" representation of the sensor output signal.
This method, however, cannot compensate for rapidly changing jitter angle values, and the process of grouping the signal samples into blocks produces undesired "end-effects" which are difficult to accommodate. Accordingly, the method of phase shifting FFT frequency components is not practical in many scanning system applications.
Time interpolation between signal samples is a less complex method of compensating for temporal signal distortion and is adaptable to a greater range of scanning system applications. In this method, the actual sensor view angle is again denoted by: EQU .theta.(t)=kt+.DELTA.(t), and (Eq. 1)
a desired linear view angle is denoted by: EQU .theta.'(t)=kt, (Eq. 2)
for a scanning system with a sensor output signal sampled at a constant rate to produce signal samples S(t). For each desired linear view angle .theta.', the two closest actual view angles are determined, e.g., (.theta.'-a) which occurred at time t.sub.n and (.theta.'+b) which occurred at time t.sub.n+1.
The compensated signal sample output for the desired linear view 8, is computed by two-point linear interpolation as shown below: EQU S'=S(t.sub.n)+(1-X) S(t.sub.n+1) (Eq. 3)
where S' is a desired signal sample corresponding to .theta.', and X is the degree of interpolation defined as X=b (a+b) for coefficients a and b discussed above.
This particular computation method of interpolation is satisfactory for processing conditions where the observed signal amplitude varies linearly with time, but yields poor results when the observed si9nal varies nonlinearly with time. To partially overcome this limitation, the interpolation process has been extended to include parabolic (or higher order) smoothing between three (or more) sample values. However, poor results remain for conditions where the observed signal amplitude is a highly nonlinear function of time.
An exemplary conventional circuit for performing interpolation is shown in FIG. 1. Data samples V.sub.i are taken, for example, from a sensor output signal at a sampling rate sufficient to satisfactorily depict regions of nonlinear variation in the sampled signal waveform. The number of data samples selected for interpolation is kept low, e.g. 2, to reduce circuit complexity, and because interpolation between greater than four data samples is usually ineffective. Data samples V.sub.i are sequentially received and shifted through locations 101, 103, 105, and 107 of data memory 100. Multiple sets of coefficients, according to the degree of interpolation required, are selected and stored in a coefficient register 120. Each set of coefficients contains N coefficients per set. For example, for linear interpolation between two data samples, N will equal 2, and the coefficients are computed as X and 1-X, where X is the degree of interpolation desired. In other cases, N is made equal to 4 and coefficients are calculated to yield quadratic smoothing over four data samples. Higher order smoothing requires N to be even higher.
If the degree of interpolation required is constant, the set of coefficients is also constant. However, if the degree of required interpolation changes with time, the selected set of coefficients is made to change with time. This change is typically accomplished by shifting the coefficient register 120 to the left or right according to the change in the degree of interpolation.
The data samples, V.sub.1, V.sub.2, V.sub.3, V.sub.i shifted into data memory locations 101, 103, 105, 107 are multiplied by coefficients selected from coefficient register 120 in multipliers 131, 133, 135, 137, respectively. The resulting multiplicative results are then summed in summer 140 to form an interpolation output.
This method, referred to here as "dancing" interpolation does not, however, work as well as desired. Perfect interpolation would provide a frequency transfer function of: EQU 1.0 e .sup.(j2.pi.XfT) (Eq. 4)
where X is the degree of interpolation, f is the frequency of the input signal and T is the sample period. The results of this transfer function would leave the amplitude of a frequency component unchanged while shifting its phase by (.beta.=2.pi.XfT). In contrast, the two point linear interpolation method (N=2) discussed above provides an amplitude gain of EQU [X.sup.2 +(1-X).sup.2 +2X(1-X) cos .beta.]1/2
and a phase shift of ##EQU1## Other interpolation methods also fail to provide the desired frequency transfer function.
In addition to distortion caused by temporal instabilities in the sensor scanning unit, sensor output signals are degraded with random noise. To suppress this noise and thereby better define the desired sensor output signal waveform, data samples V.sub.i are typically processed through a conventional convolution filter.
An exemplary circuit of a conventional sampled data convolution filter is shown in FIG. 2. Data samples V.sub.i are sequentially received and shifted through data memory 200. In operation, data samples V.sub.1, V.sub.2, V.sub.3 ... V.sub.i stored in data memory locations 201, 203, 205, 207 are multiplied by corresponding weighting coefficients W.sub.1, W.sub.2, W.sub.3 ... W.sub.n stored in coefficient memory locations 221, 223, 225, 227 in respective multipliers 231, 233, 235 237. The resulting multiplicative results are then summed in summer 240 to provide the convolution filter output.
Conventional convolution filters perform weighting and summing operations on successive input data samples to produce filtered replicas, y(n), of the input data samples, generally defined by the equation ##EQU2## The factors a.sub.i and b.sub.i are weighting coefficients applied to delayed input and output samples V(n-i) and y(n-i), respectively, where i connotes the number of sample delay periods. Equation 5 defines the transfer function of a recursive filter. If the rightmost term of the equation is eliminated, the equation defines the transfer function of a non-recursive filter herein called a convolution filter.
The convolution filter of FIG. 2 is known to suppress the random noise component of an input waveform and thereby produce a reduced noise output waveform. It will be readily appreciated that the transfer function of the convolution filter of FIG. 2 can be altered by changing the values of the weighting coefficients W.sub.n, which correspond to a.sub.i in equation 5. In convolution filters, the time phase of a frequency component in the output waveform is related, in a known way, to the time phase of that frequency component in the input waveform. In other words, the output waveform is deterministically related to the input waveform and, so long as the sample rate satisfies the Nyquist theorem, this relationship is independent of the phasing of data samples taken from the input waveform.
For sensor output signals containing distortion caused by temporal instabilities and random noise, conventional signal processing methods require the sensor output signal to serially pass through interpolation and convolution filtering circuits, as shown in FIG. 3. Such a cascade of circuits, however, realizes imperfect interpolation and substantially increases overall circuit complexity.
In light of the foregoing discussion, it is desirable to provide a scanning sensor apparatus and method incorporating a system which simultaneously compensates for sensor output signal distortion produced by temporal instabilities and suppresses random sensor noise. It is further desirable to provide a method whereby improved interpolation of the sensor output signal is achieved when performed integral to a sampled-data convolution filter process. Additionally, it is desirable to provide an apparatus which is more convenient to implement and which provides improved jitter compensation for all spatial frequencies despite the presences of a rapidly changing jitter error angle.
Additional advantages of the invention will be set forth in part in the description which follows and in part will be obvious from the description, or may be learned by practice of the invention. The invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.